/*************************************************************************
    > File Name: 5readfifo.c
    > Author: Ykk
    > Mail: 3393579535@qq.com 
    > Created Time: 2023年04月16日 星期日 20时19分58秒
 ************************************************************************/

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

#include<sys/types.h>
#include<sys/stat.h>
#include<unistd.h>
#include<fcntl.h>

#define SIZE 128

//读管道
int main()
{
	int i = 0;
	int ret = -1;
	int fd = -1;
	char buf[SIZE];

	//以只读的方式打开一个管道文件
	fd = open("fifo",O_RDONLY);
	if(-1 == fd)
	{
		perror("open");
		return 1;
	}
	printf("以只读的方式读一个管道文件...ok\n");

	//循环读管道
	while(1)
	{
		memset(buf,0,SIZE);
		ret = read(fd,buf,SIZE);
		if(ret <= 0)
		{
			perror("read");
			break;
		}
		printf("buf:%s \n",buf);
	}

	//关闭文件
	close(fd);
	return 0;
}
